﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using radnaVerzija.Interfejsi;
using MySql.Data.MySqlClient;

namespace radnaVerzija
{
    public partial class DAL
    {
        public class AktivnostDAO : IDaoCrud<Aktivnost>
        {
            protected MySqlCommand komanda;

            public long create(Aktivnost entitet)
            {
                try
                {
                    komanda = new MySqlCommand("insert Aktivnosti values ('" +
                        entitet.BrojClanova.ToString() + "', '" + entitet.Cijena.ToString() + "', ToDate('" + entitet.DanUSedmici.ToString() +
                        "', DAY), '" + ";", konekcija);
                    komanda.ExecuteNonQuery();
                    return komanda.LastInsertedId;
                }
                catch (Exception ex)
                {
                    throw ex;
                }
            }

            public Aktivnost read(Aktivnost entitet)
            {
                try
                {
                    komanda = new MySqlCommand("select * from Aktivnosti where aktivnost_ID = '" + entitet.IdAktivnosti.ToString() + "';", konekcija);
                    MySqlDataReader citac = komanda.ExecuteReader();
                    Aktivnost aktivnost = null;
                    while (citac.Read())
                    {
                      
                        aktivnost = new Aktivnost(citac.GetUInt32("broj clanova"), citac.GetUInt32("cijena"),citac.GetDateTime("dan"));
                        return aktivnost;
                    }

                    return aktivnost;
                }
                catch (Exception ex)
                {
                    throw ex;
                }
            }

            public Aktivnost update(Aktivnost entitet)
            {
                try
                {
                    komanda = new MySqlCommand("update Aktivnosti set broj clanova = '" + entitet.BrojClanova +
                        "', cijena ='" + entitet.Cijena.ToString() +
                        "',dan = ToDate('" + entitet.DanUSedmici.ToString() +
                        "', DAY), where aktivnost_ID = " + entitet.IdAktivnosti, konekcija);
                    komanda.ExecuteNonQuery();
                    return read(entitet);
                }
                catch (Exception ex)
                {
                    throw ex;
                }
            }

            public void delete(Aktivnost entitet)
            {
                try
                {
                    komanda = new MySqlCommand("delete from Aktivnosti where aktivnost_ID = " + entitet.IdAktivnosti + ";", konekcija);
                    komanda.ExecuteNonQuery();
                }
                catch (Exception ex)
                {
                    throw ex;
                }
            }
        }
    }
}
